package com.gem.netty.entity;

import com.gem.entity.Card;
import com.gem.entity.Gem;
import com.gem.entity.Nobility;
import lombok.Data;

import java.util.List;
import java.util.Map;
import java.util.TreeMap;

/**
 * Author: Xhy
 * CreateTime: 2022-09-24 13:10
 */
@Data
public class CurrentUser {

    /**
     * 当期用户id
     */
    private String id;

    private String name;

    /**
     * 当前用户宝石信息
     */
    private TreeMap<Integer,Integer> gems;

    /**
     * 当前用户手里卡牌信息
     * key:卡牌buff类型
     * value: 卡牌
     */
    private TreeMap<Integer, List<Card>> cards;

    /**
     * 当前用户贵族信息
     */
    private Nobility nobility;
    /**
     * 当前用户回合换取卡牌信息
     * 1.卡牌信息
     * 2.buff信息
     */
    private CardInfo currentGetCardInfo;

    /**
     * 当前用户回合拿取贵族信息
     */
    private Nobility currentGetNobilityInfo;
    /**
     * 当前用户回合拿取宝石信息
     * 宝石类型
     */
    private Integer currentGetGemInfo;

    /**
     * 当前用户当前回合拿宝石状态
     * 宝石类型 value : 宝石数量
     */
    private Map<Integer,Integer> currentGemState;

    /**
     * 当前用户回合状态   1:拿宝石阶段 2:换牌阶段 3:等待状态
     */
    private Integer state;

    /**
     * 用于黄金压住的卡片
     */
    private List<CardInfo> TSCards;
    /**
     * 用户已经拿取宝石数量
     */
    private Integer getGemNumber;

    /**
     * 当前玩家已获取分数
     */
    private Integer ownScore;

    /**
     * 是否可以压牌
     */
    private Boolean TSFlag;


    // 用户类型: true：人类  false 机器人
    private Boolean type;

    private Integer robotLevel;
}
